
Kinect Chapter 15. Using the Kinect's Microphone Array
Spoken Kinect Breakout

From the website:

  Kinect Open Source Programming Secrets
  http://fivedots.coe.psu.ac.th/~ad/kinect/

  Dr. Andrew Davison
  Dept. of Computer Engineering
  Prince of Songkla University
  Hat yai, Songkhla 90112, Thailand
  E-mail: ad@fivedots.coe.psu.ac.th


If you use this code, please mention my name, and include a link
to the website.

Thanks,
  Andrew

============================

This directory contains 9 Java files:
  * Breakout.java, BreakoutPanel.java,
    BricksManager.java, Brick.java,
    Ball.java, Paddle.java, Sprite.java,
    BORecognizer.java,
    AudioUtils.java

There is 1 grammar file:
  * bout.gram

There is 1 subdirectory containing game graphics (8 PNG files):
  * images/

Two batch files:
  *  compile.bat
  *  run.bat
     - make sure they refer to the correct locations for 
       TalkingJava, OpenNI, and NITE;

----------------------------
Before Compilation/Execution:

You need to download and install:
    1.	OpenNI
    2.	SensorKinect driver
    3.	NITE

For details, read section 3 of Chapter 2, or installInfo.txt
in this directory.

    4. Cloud Garden's TalkingJava
       http://www.cloudgarden.com/JSAPI/
       Speech recognition is explained in chapter 14.

    5. The audio driver from "Microsoft SDK for the Kinect"
       (http://www.microsoft.com/en-us/kinectforwindows/develop/overview.aspx)
       How to do this, and test it is working, is explained in the first two
       sections of the online chapter 15.


/** NOTE: you should test the Kinect microphone, sound card, and speech
    recognizer using the simpler examples in this download, and the examples
    in the previous chapter 14, before you try this final example. **/

----------------------------
Compilation:

> compile *.java
    // you must have TalkingJava,
    // OpenNI, the SensorKinect driver, and NITE installed

----------------------------
Execution:

> run Breakout
    // you must have TalkingJava OpenNI, the SensorKinect driver, and NITE installed

    // you start the game with a "click" focus gesture --
       push the flat of your hand at the Kinect (in the same way as a "push"
       gesture), or by waving

    // the game pauses if the Kinect cannot detect a hand

    // if a hand is not detected for 60 secs, then the game will terminate

    // hand refocusing is done with a click, wave, or hand raising,
       and the game will resume

    // you can use the keys ESC, 'q', and ctrl-c to terminate the game,
       and 'p' to pause/resume

Speech Extensions:

    // say "pause", "resume", "exit" to pause, resume, exit the game
    
    // say "move faster", "move slower" to make the ball move faster or slower

---------------------------------
Last updated: 14th March 2012
